use axum::extract::State;
use axum::Json;
use axum::response::IntoResponse;
use http::StatusCode;
use serde_json::to_string;
use crate::models::AppState::AppState;

pub(crate) async fn dictionnary_file(State(state):State<AppState>) ->impl IntoResponse{
    let mut file_database = state.file_database.clone();
    let file = file_database.lock().await;
    let json_data = to_string(&file.data).unwrap_or_else(|_| "{}".to_string());
    //所有的数据都应该用结构体包装，所有的结构体的增删改查都应该在结构体里的静态或者非静态方法里实现
    println!("{}",json_data);
    // 返回 JSON 字符串
    (StatusCode::OK, json_data).into_response()
}